package com.clouddrive.dao;

import com.clouddrive.User;

public interface UserDao {
    /**
     * 根据邮箱查询用户信息
     * @param email 邮箱
     * @return 返回null说明不存在此用户
     */
    User queryUserByEmail(String email);

    /**
     * 根据邮箱和密码查询用户信息
     * @param email 邮箱
     * @param password 密码
     * @return 返回null说明用户名或密码错误
     */
    User queryUserByEmailAndPassword(String email,String password);

    /**
     * 根据邮箱和用户名查询用户信息
     * @param email 邮箱
     * @param username 用户名
     * @return 返回null说明邮箱或用户名错误
     */
    User queryUserByEmailAndUsername(String email,String username);

    /**
     *更新用户信息
     * @param user 用户
     * @return 返回更新后的用户信息
     */
    User updateUserInformation(User user);
    /**
     *
     * @param user 用户名
     * @return 返回用户信息
     */
    User saveUser(User user);

}
